package com.lx.sync.config.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lx.sync.config.model.SyncConfig;

import java.util.List;

/**
 * 同步配置服务接口
 */
public interface SyncConfigService extends IService<SyncConfig> {
    
    /**
     * 保存同步配置
     *
     * @param config 同步配置
     * @return 是否保存成功
     */
    boolean saveSyncConfig(SyncConfig config);
    
    /**
     * 更新同步配置
     *
     * @param config 同步配置
     * @return 是否更新成功
     */
    boolean updateSyncConfig(SyncConfig config);
    
    /**
     * 获取同步配置
     *
     * @param idxName 索引名称
     * @return 同步配置
     */
    SyncConfig getSyncConfig(String idxName);
    
    /**
     * 获取所有同步配置
     *
     * @return 同步配置列表
     */
    List<SyncConfig> getAllSyncConfigs();
    
    /**
     * 删除同步配置
     *
     * @param idxName 索引名称
     * @return 是否删除成功
     */
    boolean deleteSyncConfig(String idxName);
    
    /**
     * 启用/禁用同步配置
     *
     * @param idxName 索引名称
     * @param enabled 是否启用
     * @return 是否操作成功
     */
    boolean toggleSyncConfig(String idxName, boolean enabled);
} 